package com.jc.ds.mapper;

import java.util.List;

import com.jc.ds.base.annotation.MyBatisRepository;

@MyBatisRepository
public interface BaseMapper<T, K> {

	int deleteByPrimaryKey(K userId);

	int insert(T record);

	int insertSelective(T record);

	T selectByPrimaryKey(K userId);

	/**
	 * <dl>
	 * <dt>说明：</dt>
	 * <dd>属性不为空字段更新，为空（null）不做更新</dd>
	 * </dl>
	 * @Title:updateByPrimaryKeySelective
	 * @param record
	 * @return int
	 */
	int updateByPrimaryKeySelective(T record);

	int updateByPrimaryKey(T record);

	List<T> selectLikeAll(T vo);

	Integer selectLikeAllCount(T vo);

	List<T> selectAll(T vo);

	Integer selectAllCount(T vo);
}
